const http = require("http");
const fs = require("fs");

const server = http.createServer((request, response) => {
  const {url} = request;
  if (url === "/home") {
    fs.readFile("./public/index.html", "utf-8", (err, data) => {
      if (err) throw err;
      response.setHeader("content-type", "text/html;charset=utf-8")
      response.end(data)
    })
  } else if (url === "/login") {
    fs.readFile("./public/login.html", "utf-8", (err, data) => {
      if (err) throw err;
      response.setHeader("content-type", "text/html;charset=utf-8")
      response.end(data)
    })
  } else if (url === "/style.css") {
    fs.readFile("./public/style.css", "utf-8", (err, data) => {
      if (err) throw err;
      response.setHeader("content-type", "text/css")
      response.end(data)
    })
  } else {
    response.end("not found 404...")
  }
})

server.listen(3000)

/*
content-type的类型

  1. 文本类型 (text)
  用于表示纯文本或格式化文本。
  text/plain: 纯文本文件，浏览器会直接显示内容，不会解析任何标签。(.txt)
  text/html: HTML 文档。这是网页最核心的类型。(.html, .htm)
  text/css: CSS 样式表。浏览器会将其解析为样式规则。(.css)
  text/javascript: JavaScript 代码。浏览器会将其作为脚本执行。(.js, .mjs)
  text/csv: 逗号分隔值文件。(.csv)
  text/xml: XML 数据。(.xml)


  2. 图像类型 (image)
  用于表示各种格式的图片。
  image/jpeg: JPEG 格式的图片。(.jpg, .jpeg)
  image/png: PNG 格式的图片，支持透明。(.png)
  image/gif: GIF 格式的图片，支持动画。(.gif)
  image/svg+xml: SVG 格式的矢量图。(.svg)
  image/webp: Google 开发的现代图片格式，压缩率高。(.webp)
  image/x-icon: ICO 图标格式。(.ico)


  3. 音频类型 (audio)
  用于表示音频文件。
  audio/mpeg: MP3 格式的音频。(.mp3)
  audio/wav: WAV 格式的音频。(.wav)
  audio/ogg: Ogg 格式的音频。(.ogg)
  audio/webm: WebM 格式的音频。(.weba)

  4. 视频类型 (video)
  用于表示视频文件。
  video/mp4: MP4 格式的视频。(.mp4)
  video/webm: WebM 格式的视频，常用于 HTML5 的 <video> 标签。(.webm)
  video/ogg: Ogg 格式的视频。(.ogv)

  

  5. 应用类型 (application)
  application/json: JSON 格式的数据。这是现代 API 通信的事实标准。(.json)
*/
